#include "MeshNode.h"

namespace Rz { namespace Graphics { namespace Scene {

MeshNode::MeshNode()
	: Node(NodeType::Mesh)
{

}

const Render::Geometry* MeshNode::GetGeometry() const
{
	return _geometry;
}

Render::Geometry* MeshNode::GetGeometry()
{
	return _geometry;
}

void MeshNode::SetGeometry(Render::Geometry* geometry)
{
	_geometry = geometry;
}

const Materials::MaterialBase* MeshNode::GetMaterial() const
{
	return _material; 
}

Materials::MaterialBase* MeshNode::GetMaterial()
{
	return _material;
}

void MeshNode::SetMaterial(Materials::MaterialBase* material)
{
	_material = material;
}

const Render::IRasterizerState* MeshNode::GetRasterizerState() const
{
	return _rasterizerState;
}

Render::IRasterizerState* MeshNode::GetRasterizerState()
{
	return _rasterizerState;
}

void MeshNode::SetRasterizerState(Render::IRasterizerState* rasterizerState)
{
	_rasterizerState = rasterizerState;
}

} } }
